perm filename PROBLE[206,JMC] blob
sn#005321 filedate 1971-01-05 generic text, type T, neo UTF8
00100 examples, exercises, exam problems, and projects
00200
00300 1. Basic LISP.
00400 alt, fancy alt, (indebted to Allen Newell for this example)
00500 subst, equal, member, sublis, path, adjoin, append,
00600 union, intersection, difference, Cartesian product,
00700 differentiation (2 term and multi-term sums and products),
00800 maplist,andlis, orlis, exactness of differential equation,
00900 canonical forms of ( polynomials, boolean expressions,
01000 rational functions, conditional expressions)
01100 elementary simplifications syntax directed,
01200 elementary compilation syntax directed,
01300 elementary I-O syntax directed,
01400 various sorts, multiplication of permutations and elements
01450 of the group algebra,
01500
01600 2. Projects.
01700 a. For mathematicians: Equivalence of
01800 two dimensional manifolds, computation of homology
01900 groups of simplicial manifolds, factorization of
02000 algebraic integers, factorization of polynomials with large
02100 integers as coefficients and also factorization over
02200 algebraic number fields, computation of representations
02300 of groups, computation of Galois groups, compute representation
02400 of symmetric functions in terms of elementary symmetric
02500 functions, generalize this to polynomials invariant under
02600 a group of permutations,
02700
02800 b. For hackers and computer scientists: Hash facility for
02900 LISP, specs of LISP 1.7, a good syntax directed system, a truly
03000 optimal compiler, solve the functional argument problem,
03100 improve Quam I-O, better interactive facilities,
03200 better numerical computation, better library, LISP 2,
03300 a LISP system suitable for all purposes, e.g. with good
03400 imbedded ALGOL and machine language and facilities for
03500 handling packed data and a variety of storage control
03600 mechanisms.
03700 invariant hash,
03800
03900 c. Applications: Better MATHLAB, resolution
04000 package, integration proof checker,
04100 MATHLAB at Stanford, trigonometric identity proof checker,
04200 contour integration proof checker,
04300 improvements to REDUCE (e.g. better matrix package, better
04400 matrix inversion, better error messages, (call Hearn),
04500 improved simplification heuristics), display of mathematical
04600 exprssions and their entry using the display (Hearn)
04700 Collins gcd for polynomials, Berlekamp algorithms,
04800
04900
05000 3. Theory
05100 recursion induction problems
05200 alt pair[x,y] = x
05300 x*[y*z] = [x*y]*z
05400 reverse reverse x = x
05500 reverse x*y = [reverse y] * [reverse x]
05600 andlis[x*y,p] = andlis[x,p] ∧ andlis[y,p]
05700
05800 correctness of elementary compiler
05900
06000 where does and where must lisp spend its time